package com.lonely.goods.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.lonely.goods.domain.dto.material.MaterialSubmitDTO;
import com.lonely.goods.domain.dto.material.QueryMaterialPageDTO;
import com.lonely.goods.domain.entity.SysMaterial;
import com.lonely.goods.domain.vo.material.page.MaterialDetailVO;
import com.lonely.goods.domain.vo.material.page.MaterialPageQueryVO;

/**
 * @author : 黄志标
 * @date: 2025/7/2 10:43
 * @description: 物料接口
 */
public interface IMaterialService extends IService<SysMaterial> {

    /**
     * 分页查询
     *
     * @param queryDto
     * @return
     */
    Page<MaterialPageQueryVO> page(QueryMaterialPageDTO queryDto);

    /**
     * 启用物料
     *
     * @param id
     */
    void enabled(Long id);

    /**
     * 禁用物料
     *
     * @param id
     */
    void disable(Long id);


    /**
     * 获取指定物料id对应的物料详情
     *
     * @param materialId
     * @return
     */
    MaterialDetailVO detail(Long materialId);

    /**
     * 保存/编辑 物料信息
     *
     * @param submitDto
     */
    void submit(MaterialSubmitDTO submitDto);
}
